import configparser
import os
import yaml
from conf.settings import CONFIG_FILE,CASE_DATA_PATH
from common.log import Log


def parse_ini(node,file_path=CONFIG_FILE):#解析confif.ini里的所有配置,包括mysql,redis等
    if not os.path.exists(file_path):
        Log.error('配置文件不存在，文件路径{}',file_path)#格式化输出,同format()用法
        raise Exception('配置文件不存在')

    with open(file_path,encoding='utf-8')as fr:
        c = configparser.ConfigParser()
        c.read_file(fr)

        if node in c.sections():
            result = dict(c[node])
            return result
        Log.warning("配置文件中[ {} ]节点不存在", node)

def load_yaml(file_name): #settings文件里拼接的是到data的目录
    file_path = os.path.join(CASE_DATA_PATH,file_name)#拼接data目录下具体的测试数据yaml文件
    if not os.path.exists(file_path):
        Log.error('测试数据文件不存在，文件路径{}',file_path)
        raise Exception('yaml文件不存在')

    with open(file_path,encoding='utf-8') as fr:
       # print(yaml.load(fr,Loader=yaml.SafeLoader))
       return yaml.load(fr,Loader=yaml.SafeLoader)

if __name__ == '__main__':
    parse_ini('mysql')
